package cn.itcalvin.sncoal.cth.domain;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.util.Date;
import javax.persistence.*;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import lombok.Data;

/**
 * 智能化系统评分任务表
 */
@ApiModel(description="智能化系统评分任务表")
@Data
@Table(name = "info_pf")
public class InfoPf {
    /**
     * id
     */
    @Id
    @Column(name = "id")
    @ApiModelProperty(value="id")
    @NotNull(message = "id不能为null")
    private Long id;

    /**
     * 矿井Id
     */
    @Column(name = "mineId")
    @ApiModelProperty(value="矿井Id")
    @NotNull(message = "矿井Id不能为null")
    private Long mineId;

    /**
     * 检查时间
     */
    @Column(name = "checkTime")
    @ApiModelProperty(value="检查时间")
    @NotNull(message = "检查时间不能为null")
    private Date checkTime;

    /**
     * 检查任务名称
     */
    @Column(name = "taskName")
    @ApiModelProperty(value="检查任务名称")
    @Size(max = 255,message = "检查任务名称最大长度要小于 255")
    @NotBlank(message = "检查任务名称不能为空")
    private String taskName;

    /**
     * 任务类型 1：自评 2：自评后检查
     */
    @Column(name = "taskType")
    @ApiModelProperty(value="任务类型 1：自评 2：自评后检查")
    @NotNull(message = "任务类型 1：自评 2：自评后检查不能为null")
    private Integer taskType;

    /**
     * 评分任务状态 1:待自评 2:已自评待核验/已自评待提交整改计划 3:已核验待出报告 4:已出报告待提交整改计划 5：已提交整改计划
     */
    @Column(name = "`state`")
    @ApiModelProperty(value="评分任务状态 1:待自评 2:已自评待核验/已自评待提交整改计划 3:已核验待出报告 4:已出报告待提交整改计划 5：已提交整改计划")
    @NotNull(message = "评分任务状态 1:待自评 2:已自评待核验/已自评待提交整改计划 3:已核验待出报告 4:已出报告待提交整改计划 5：已提交整改计划不能为null")
    private Integer state;

    /**
     * 矿井提交的整改计划
     */
    @Column(name = "zgjhUrl")
    @ApiModelProperty(value="矿井提交的整改计划")
    @Size(max = 255,message = "矿井提交的整改计划最大长度要小于 255")
    private String zgjhUrl;

    /**
     * 创建人
     */
    @Column(name = "createId")
    @ApiModelProperty(value="创建人")
    @NotNull(message = "创建人不能为null")
    private Long createId;

    /**
     * 创建时间
     */
    @Column(name = "createTime")
    @ApiModelProperty(value="创建时间")
    @NotNull(message = "创建时间不能为null")
    private Date createTime;

    /**
     * 创建人
     */
    @Column(name = "modifyId")
    @ApiModelProperty(value="创建人")
    private Long modifyId;

    /**
     * 创建时间
     */
    @Column(name = "modifyTime")
    @ApiModelProperty(value="创建时间")
    private Date modifyTime;

    /**
     * 创建人
     */
    @Column(name = "deleteId")
    @ApiModelProperty(value="创建人")
    private Long deleteId;

    /**
     * 创建时间
     */
    @Column(name = "deleteTime")
    @ApiModelProperty(value="创建时间")
    private Date deleteTime;

    /**
     * 是否删除
     */
    @Column(name = "isDelete")
    @ApiModelProperty(value="是否删除")
    @NotNull(message = "是否删除不能为null")
    private Boolean isDelete;
}